class CaracterizacoesController < ApplicationController

  filter_access_to :all, :attribute_check => true, :load_method => :get_pleito
  before_filter    :get_caracterizacao, :except => [:new, :create]

  def new
    @caracterizacao = Caracterizacao.new
  end

  def create
    @caracterizacao = Caracterizacao.new(params[:caracterizacao])
    @caracterizacao.pleito = @pleito
    if @caracterizacao.save
      flash[:notice] = 'Pleito caracterizado com sucesso.'
      if @pleito.reducao?
        redirect_to [@pleito, :caracterizacao, :atividades]
      else
        redirect_to :action => "edit"
      end
    else
      render :action => "new"
    end
  end

  def update
    if @caracterizacao.update_attributes(params[:caracterizacao])
      flash[:notice] = 'Caracterização atualizada com sucesso.'
      if @pleito.reducao?
        redirect_to [@pleito, :caracterizacao, :atividades]
      else
        redirect_to :action => "edit"
      end
    else
      render :action => "edit"
    end
  end

  private

  def get_pleito
    @pleito = Pleito.find(params[:pleito_id], :include => :caracterizacao)
  end

  def get_caracterizacao
    @caracterizacao = @pleito.caracterizacao
  end

end
